#pragma once

#include "json.h"
#include <memory>

class DiskManager{
public:
    using Ptr = std::shared_ptr<DiskManager>; 
    static Ptr Instance();
    DiskManager();

    ~DiskManager();

    void RegistRPC();

    bool diskChangeEvent();
private:
    bool getDiskStatus(const Json::Value& req_params, Json::Value& res_result, std::string& errinfo);
    

    std::string m_eventDiskInfo = R"({
        "d": {
            "event": "eventUpdateDisk",
            "data": {
                "TotalDiskSpace": 0,
                "UsableDiskSpace": 0
            }
        },
        "op": 6,
        "sid": 1234567
    })";
};